Application connection for devices in a network

ABSTRACT

A method for application connection comprises receiving a list of application active sessions by a first electronic device based on location of the active sessions in relation to a location of the first electronic device, and selecting an active session using the first electronic device to gain access for connection to a first application by the first electronic device.

TECHNICAL FIELD

One or more embodiments relate generally to applications in a networkenvironment and, in particular, to application connection by devices ina network.

BACKGROUND

Wireless networks use passwords to prevent access to devices and contentwithin the network for security. In order for guests to access a securewireless network with their devices, the guest devices are required topair to the wireless network for discovery. In order for pairing tooccur, the password for the wireless network has to be given to theguests, which poses a security risk as well as an inconvenience.

SUMMARY

In one embodiment, a method provides for application connection. Oneembodiment comprises receiving a list of application active sessions bya first electronic device based on location of the active sessions inrelation to a location of the first electronic device. In oneembodiment, an active session is selected using the first electronicdevice to gain access for connection to a first application by the firstelectronic device.

Another embodiment provides a method for application connection thatcomprises receiving session information by a first device. In oneembodiment, the first device includes a first application launchedthereon. In one embodiment, an invitation message including the sessioninformation is provided to a second electronic device. In oneembodiment, the session information is used by the second electronicdevice to connect to the first application.

One embodiment provides a system for application connection. In oneembodiment, a first electronic device executes a first application forgenerating identification content for the first electronic device. Inone embodiment, a second electronic device obtains session informationbased on the identification content and uses the session information toconnect to the first application.

Another embodiment provides a non-transitory computer-readable mediumhaving instructions which when executed on a computer perform a methodcomprising: generating identification content for a first electronicdevice. In one embodiment, the first electronic device includes a firstapplication launched thereon. In one embodiment, session informationbased on the identification content is obtained by a second electronicdevice. The session information is used by the second electronic deviceto connect to the first application.

These and other aspects and advantages of the embodiments will becomeapparent from the following detailed description, which, when taken inconjunction with the drawings, illustrate by way of example theprinciples of the embodiments.

BRIEF DESCRIPTION OF THE DRAWINGS

For a fuller understanding of the nature and advantages of theembodiments, as well as a preferred mode of use, reference should bemade to the following detailed description read in conjunction with theaccompanying drawings, in which:

FIG. 1 shows a schematic view of a communications system, according toan embodiment.

FIG. 2 shows a block diagram of an architecture system for applicationconnection, according to an embodiment.

FIG. 3 shows an example flow chart for application connection, accordingto an embodiment.

FIG. 4 shows another example flow chart for application connection,according to an embodiment.

FIG. 5 shows an example flow chart for application connection, accordingto an embodiment.

FIG. 6 shows another example flow chart for application connection,according to an embodiment.

FIG. 7 shows another example flow chart for application connection,according to an embodiment.

FIG. 8 shows an example scenario for application connection, accordingto an embodiment.

FIG. 9 shows another example scenario for application connection,according to an embodiment.

FIG. 10 shows another example scenario for application connection,according to an embodiment.

FIG. 11 shows another example scenario for application connection,according to an embodiment.

FIG. 12 shows another example scenario for application connection,according to an embodiment.

FIG. 13 shows another example scenario for application connection,according to an embodiment.

FIG. 14 shows another example scenario for application connection,according to an embodiment.

FIG. 15 is a high-level block diagram showing an information processingsystem comprising a computing system implementing an embodiment.

DETAILED DESCRIPTION

The following description is made for the purpose of illustrating thegeneral principles of the embodiments and is not meant to limit theinventive concepts claimed herein. Further, particular featuresdescribed herein can be used in combination with other describedfeatures in each of the various possible combinations and permutations.Unless otherwise specifically defined herein, all terms are to be giventheir broadest possible interpretation including meanings implied fromthe specification as well as meanings understood by those skilled in theart and/or as defined in dictionaries, treatises, etc.

One or more embodiments of relate generally to application sharing. Inone embodiment provides connection to an application launched within alocal network by electronic devices.

In one embodiment, the electronic devices comprise one or more mobileelectronic devices capable of data communication over a communicationlink such as a wireless communication link. Examples of such mobiledevice include a mobile phone device, a mobile tablet device, etc. Inone embodiment, a method provides for application connection forelectronic devices. One embodiment comprises receiving a list ofapplication active sessions by a first electronic device based onlocation of the active sessions in relation to a location of the firstelectronic device. In one embodiment, an active session is selectedusing the first electronic device to gain access for connection to afirst application by the first electronic device.

Another embodiment provides a method for application connection forelectronic devices that comprises receiving session information by afirst device. In one embodiment, the first device includes a firstapplication launched thereon. In one embodiment, an invitation messageincluding the session information is provided to a second electronicdevice. In one embodiment, the session information is used by the secondelectronic device to connect to the first application.

FIG. 1 is a schematic view of a communications system in accordance withone embodiment. Communications system 10 may include a communicationsdevice that initiates an outgoing communications operation (transmittingdevice 12) and communications network 110, which transmitting device 12may use to initiate and conduct communications operations with othercommunications devices within communications network 110. For example,communications system 10 may include a communication device thatreceives the communications operation from the transmitting device 12(receiving device 11). Although communications system 10 may includeseveral transmitting devices 12 and receiving devices 11, only one ofeach is shown in FIG. 1 to simplify the drawing.

Any suitable circuitry, device, system or combination of these (e.g., awireless communications infrastructure including communications towersand telecommunications servers) operative to create a communicationsnetwork may be used to create communications network 110. Communicationsnetwork 110 may be capable of providing communications using anysuitable communications protocol. In some embodiments, communicationsnetwork 110 may support, for example, traditional telephone lines, cabletelevision, Wi-Fi (e.g., a 802.11 protocol), Bluetooth®, high frequencysystems (e.g., 900 MHz, 2.4 GHz, and 5.6 GHz communication systems),infrared, other relatively localized wireless communication protocol, orany combination thereof. In some embodiments, communications network 110may support protocols used by wireless and cellular phones and personalemail devices (e.g., a Blackberry®). Such protocols can include, forexample, GSM, GSM plus EDGE, CDMA, quadband, and other cellularprotocols. In another example, a long range communications protocol caninclude Wi-Fi and protocols for placing or receiving calls using VOIP orLAN. Transmitting device 12 and receiving device 11, when located withincommunications network 110, may communicate over a bidirectionalcommunication path such as path 13. Both transmitting device 12 andreceiving device 11 may be capable of initiating a communicationsoperation and receiving an initiated communications operation.

Transmitting device 12 and receiving device 11 may include any suitabledevice for sending and receiving communications operations. For example,transmitting device 12 and receiving device 11 may include a mediaplayer, a cellular telephone or a landline telephone, a personal e-mailor messaging device with audio and/or video capabilities, pocket-sizedpersonal computers such as an iPAQ Pocket PC available by HewlettPackard Inc., of Palo Alto, Calif., personal digital assistants (PDAs),a desktop computer, a laptop computer, and any other device capable ofcommunicating wirelessly (with or without the aid of a wireless enablingaccessory system) or via wired pathways (e.g., using traditionaltelephone wires). The communications operations may include any suitableform of communications, including for example, voice communications(e.g., telephone calls), data communications (e.g., e-mails, textmessages, media messages), or combinations of these (e.g., videoconferences).

FIG. 2 shows a functional block diagram of an embodiment of anarchitecture system 100 for application connection by electronic devices1-N 140 (N being a positive integer), according to an embodiment. In oneembodiment, the system 100 comprises a discovery a television device120, a cloud or server device 130 and network connection device 110. Inone embodiment, the television device comprises a display 121, and anapplication manager module 125 for managing applications, such asapplication 1 126, application 2 127 up to application N 128, N being apositive integer.

In one embodiment, the display 121 may be a separate device from thetelevision device 120 or integrated with the television device 120. Inone embodiment, the network connection device 110 may comprise a networkinterface, such as a network modem, router, etc. for handlingcommunications between the television device and the server device 130and for forming a local network that the television device 120 may beconnected with.

In one embodiment, both transmitting device 12 and receiving device 11may include some or all of the features of electronics devices 1-N 140.In one embodiment, the electronic devices 1-N 140 may comprise a display141, input mechanism 142, communications circuitry 143, controlcircuitry 144, a camera 145, and a global positioning system (GPS)receiver module 146, a microphone, audio output, and any other suitablecomponents.

In one embodiment, all of the applications employed by display 141,input mechanism 142, the audio output and communications circuitry 143may be interconnected and managed by control circuitry 144. In oneexample, a hand held music player capable of transmitting music to othertuning devices may be incorporated into the electronics devices 1-N 140.

In one embodiment, the audio output may include any suitable audiocomponent for providing audio to a user of any of the electronicsdevices 1-N 140. For example, the audio output may include one or morespeakers (e.g., mono or stereo speakers) built into an electronicsdevice 1-N 140. In some embodiments, the audio output may include anaudio component that is remotely coupled to an electronics device 1-N140. For example, the audio output may include a headset, headphones orearbuds that may be coupled to communications device with a wire (e.g.,coupled to an electronics device 1-N 150 with a jack) or wirelessly(e.g., Bluetooth® headphones or a Bluetooth® headset).

In one embodiment, display 141 may include any suitable screen orprojection system for providing a display visible to the user. Forexample, display 141 may include a screen (e.g., an LCD screen) that isincorporated in an electronics device 1-N 140. As another example,display 141 may include a movable display or a projecting system forproviding a display of content on a surface remote from an electronicsdevice 1-N 140 (e.g., a video projector). Display 141 may be operativeto display content (e.g., information regarding communicationsoperations or information regarding available media selections) underthe direction of control circuitry 144.

In one embodiment, input mechanism 142 may be any suitable mechanism oruser interface for providing user inputs or instructions to anelectronics device 1-N 140. Input mechanism 142 may take a variety offorms, such as a button, keypad, dial, a click wheel, or a touch screen.The input mechanism 142 may include a multi-touch screen. The inputmechanism may include a user interface that may emulate a rotary phoneor a multi-button keypad, which may be implemented on a touch screen orthe combination of a click wheel or other user input device and ascreen.

In one embodiment, communications circuitry 143 may be any suitablecommunications circuitry operative to connect to a communicationsnetwork (e.g., communications network 110, FIG. 1) and to transmitcommunications operations and media from an electronics device 1-N 140to other devices within the communications network. Communicationscircuitry 143 may be operative to interface with the communicationsnetwork using any suitable communications protocol such as, for example,Wi-Fi (e.g., a 802.11 protocol), Bluetooth®, high frequency systems(e.g., 900 MHz, 2.4 GHz, and 5.6 GHz communication systems), infrared,GSM, GSM plus EDGE, CDMA, quadband, and other cellular protocols, VOIP,or any other suitable protocol.

In some embodiments, communications circuitry 143 may be operative tocreate a communications network using any suitable communicationsprotocol. For example, communications circuitry 143 may create ashort-range communications network using a short-range communicationsprotocol to connect to other communications devices. For example,communications circuitry 143 may be operative to create a localcommunications network using the Bluetooth® protocol to couple anelectronics device 1-N 140 with a Bluetooth® headset.

In one embodiment, control circuitry 144 may be operative to control theoperations and performance of an electronics device 1-N 140. Controlcircuitry 144 may include, for example, a processor, a bus (e.g., forsending instructions to the other components of an electronics device1-N 140), memory, storage, or any other suitable component forcontrolling the operations of an electronics device 1-N 140. In someembodiments, a processor may drive the display and process inputsreceived from the user interface. The memory and storage may include,for example, cache, Flash memory, ROM, and/or RAM. In some embodiments,memory may be specifically dedicated to storing firmware (e.g., fordevice applications such as an operating system, user interfacefunctions, and processor functions). In some embodiments, memory may beoperative to store information related to other devices with which anelectronics device 1-N 140 performs communications operations (e.g.,saving contact information related to communications operations orstoring information related to different media types and media itemsselected by the user).

In one embodiment, the control circuitry 144 may be operative to performthe operations of one or more applications implemented on an electronicsdevice 1-N 140. Any suitable number or type of applications may beimplemented. Although the following discussion will enumerate differentapplications, it will be understood that some or all of the applicationsmay be combined into one or more applications. For example, anelectronics device 1-N 140 may include an application connectionapplication, a dialog application, a map application, a mediaapplication (e.g., QuickTime, MobileMusic.app, or MobileVideo.app). Insome embodiments, an electronics device 1-N 140 may include one orseveral applications operative to perform communications operations. Forexample, an electronics device 1-N 140 may include a messagingapplication, a mail application, a telephone application, a voicemailapplication, an instant messaging application (e.g., for chatting), avideoconferencing application, a fax application, or any other suitableapplication for performing any suitable communications operation.

In some embodiments, an electronics device 1-N 140 may include amicrophone. For example, an electronics device 1-N 140 may include amicrophone to allow the user to transmit audio (e.g., voice audio)during a communications operation or as a means of establishing acommunications operation or as an alternate to using a physical userinterface. A microphone may be incorporated in an electronics device 1-N140, or may be remotely coupled to an electronics device 1-N 140. Forexample, a microphone may be incorporated in wired headphones, or amicrophone may be incorporated in a wireless headset.

In one embodiment, an electronics device 1-N 140 may include any othercomponent suitable for performing a communications operation. Forexample, an electronics device 1-N 140 may include a power supply, portsor interfaces for coupling to a host device, a secondary input mechanism(e.g., an ON/OFF switch), or any other suitable component.

In one embodiment, a user may direct an electronics device 1-N 140 toperform a communications operation using any suitable approach. As oneexample, a user may receive a communications request from another device(e.g., an incoming telephone call, an email or text message, an instantmessage), and may initiate a communications operation by accepting thecommunications request. As another example, the user may initiate acommunications operation by identifying another communications deviceand transmitting a request to initiate a communications operation (e.g.,dialing a telephone number, sending an email, typing a text message, orselecting a chat screen name and sending a chat request).

In one embodiment, an electronic device 1-N 140 (N being a positiveinteger) may comprise a mobile device that may utilize mobile devicehardware functionality including: the GPS receiver module 146, thecamera 145, a compass module, and an accelerometer and gyroscope module.The GPS receiver module 146 may be used to identify a current locationof the mobile device (i.e., user). The compass module is used toidentify direction of the mobile device. The accelerometer and gyroscopemodule is used to identify tilt of the mobile device.

The system 100 provides the electronic devices 1-N 140 (N being apositive integer) the ability to connect to an application launched onthe television device 120, such as application 1 126, application 2 127to application N 128. In one embodiment, the application 1 126,application 2 127 to application N 128 may comprise softwareapplications executing on the television device 120, or executing onanother device and having a visual display portion of the applicationshown on the display 121.

In one embodiment, the local network (e.g., a wireless network) that thetelevision device 120 is connected to is a secured network with asecurity code (e.g., pass code, password, key code, etc.) providingaccess to the local network such that without having knowledge of thekey code, the electronic devices 1-N 140 cannot pair or join the localnetwork. In one embodiment, access is provided to the electronic devices1-N 140 to the local network that the application is launched by meansfor connecting, such as by obtaining information from a server based onlocation of an electronic device (e.g., electronic devices 1-N 140),obtaining information from a communication (e.g., text message, email,chat, etc.), etc. In one embodiment, once an electronic device 1-N 140is connected to the local network, the connection has a limited life forsecurity purposes (e.g., one hour, two hours, 4 hours, etc.). In oneembodiment, the security code is unique for each session.

In one embodiment, the timestamp and time to live value retrieved (e.g.,from the cloud or server 130) are used by an application on anelectronic device 1-N 140 to determine when to disconnect from thenetwork. In this embodiment, the network information is time bound andthe usage of the obtained information is restricted after the timestamphas expired.

In one embodiment, after an electronic device 1-N 140 connects to anapplication (e.g., application 1 126) on the television device 120, theelectronic device 1-N 140 is disconnected from the network if it movesout of the wireless range of the network. In one embodiment, theconnection information would have to be obtained again by the electronicdevice 1-N 140 in order to re-establish the connection. In oneembodiment, the connection information may be obtained from any otherelectronic device 1-N 140 that may have the connection information.

FIG. 3 shows an example flow chart process 300 for applicationconnection in a network, according to an embodiment. In one embodiment,the process 300 starts with block 301. In one embodiment, in block 302an application (e.g., Application 1 126, Application 2 127 toApplication N 128) is launched on a television device, such astelevision device 120 (FIG. 1). In one embodiment, in block 303 thetelevision application obtains information from the local network and/orfrom the user (e.g., via prompting for information entry). In oneembodiment, the information may comprise a wireless network service setidentification (SSID), network key (e.g., a number (e.g., 12345), analphanumeric code (e.g., ABC123), etc.), a television device's Internetprotocol (IP) address, session date and time, a timestamp, and time tolive, session name, host's name, host's physical address, etc. In oneembodiment, a java script object notation (JSON) string is formed fromthe compiled information obtained in block 303 (e.g., {“SSID”:“Samsung,” “NKEY”: “12345,” “TVIP”: “1.2.3.4,” “Timestamp”: “12345,”“TTL,”: “12”}). In one embodiment, the JSON string is encrypted (e.g.,by known encryption techniques).

Process 300 continues with block 304 where the obtained information issent to a cloud or server (e.g., cloud or server 130). In oneembodiment, in block 305, the cloud or server creates a new sessionbased on the received information. In block 306, the server creates asession ID for the new session. In one embodiment, in block 307, amobile device (e.g., electronic device 1-N 140, FIG. 1) retrieves GPSinformation (e.g., GPS coordinates) from its GPS receiver module (e.g.,GPS receiver module 146) and sends this information to the cloud/server.In one embodiment, in block 308, the cloud/server sends the mobiledevice a list of current sessions in the local area of the mobile devicebased on the received GPS information. A user may then select a sessionto join based on the received list that is displayed on the mobiledevice (e.g., display 141). In block 309 the process 300 stops.

FIG. 4 shows an example flow chart process 400 for applicationconnection in a network, according to an embodiment. In one embodiment,the process 400 starts with block 401. In one embodiment, in block 402,a mobile device application is launched on a mobile device, such as anelectronic device 1-N 140 (FIG. 2). In block 403, active localtelevision application sessions that are received from the cloud/serverare displayed on the mobile device. In one embodiment, in block 404, aparticular session is selected for accessing a television application ina local network. In block 405, the selected session information is sentto the cloud/server. In block 406, the cloud/server sends back localnetwork information to the mobile device based on the selected session(e.g., Wi-Fi SSID, session ID, IP address of the television device,network key, etc.). In one embodiment, in block 407, the mobile deviceuses the information received to connect to the television applicationof the selected session. In block 408, the process 400 stops.

FIG. 5 shows an example flow chart process 600 for applicationconnection in a network, according to an embodiment. In one embodiment,the process 600 starts with block 601. In one embodiment, in block 602,a mobile device, such as an electronic device 1-N 140 (FIG. 2), receivesa message (e.g., email, text message, etc.) from a host that includes atelevision application session information (e.g., session ID). In block603, the mobile device downloads a mobile device application if theapplication is not currently loaded on the mobile device, where themobile device application assists with connecting to a televisionapplication. In one embodiment, the received message includes a link fordownloading the mobile device application. In block 604, the mobiledevice launches the application. In one embodiment, in block 605, theuser enters the session ID as requested/prompted by the application onthe mobile device. In one embodiment, in block 606, the mobile deviceapplication sends the session ID information to the cloud/server. Inblock 607, the cloud/server sends the mobile device session details forallowing the mobile device to connect to the television applicationsession on the local network. In block 608, the process 600 stops.

FIG. 6 shows an example flow chart process 700 for applicationconnection in a network, according to an embodiment. In one embodiment,the process 700 starts with block 701. In one embodiment, in block 702an application (e.g., Application 1 126, Application 2 127 toApplication N 128) is launched on a television device, such astelevision device 120 (FIG. 1). In one embodiment, in block 703, thetelevision application obtains information from the local network and/orfrom the user (e.g., via prompting for information entry). In oneembodiment, the information may comprise a wireless network service setidentification (SSID), network key (e.g., a number (e.g., 12345), analphanumeric code (e.g., ABC123), etc.), a television device's Internetprotocol (IP) address, session date and time, a timestamp, and time tolive, session name, host's name, host's physical address, etc. In oneembodiment, a java script object notation (JSON) string is formed fromthe compiled information obtained in block 303 (e.g., {“SSID”:“Samsung,” “NKEY”: “12345,” “TVIP”: “1.2.3.4,” “Timestamp”: “12345,”“TTL,”: “12”}). In one embodiment, the JSON string is encrypted (e.g.,by known encryption techniques).

In one embodiment, in block 704, the obtained information is sent to thecloud/server (e.g., cloud or server 130). In one embodiment, the cloudor server creates a new session based on the received information andcreates a session ID. Process 700 continues to block 705, where thetelevision application receives the session information from thecloud/server. In one embodiment, in block 706, a quick response (QR)code is generated based on the session information received from thecloud/server. In block 707, the QR code is displayed on a display (e.g.,display 121). In block 708, the process 700 stops.

FIG. 7 shows an example flow chart process 800 for applicationconnection in a network, according to an embodiment. In one embodiment,the process 800 starts with block 801. In one embodiment, in block 802,a mobile device application is launched on a host's mobile device (e.g.,electronic device 2 140) that includes a QR code reader (e.g., anapplication that uses a camera 145 (FIG. 1) for scanning). In oneembodiment, in block 803, a QR code that is displayed by a televisionapplication on a display (e.g., display 141, FIG. 1) is scanned in bythe host's mobile device. In one embodiment, in block 804, sessioninformation is extracted from the scanned QR code by the host's mobiledevice. In one embodiment, in block 805, a communication client (e.g.,email client, text messaging client, etc.) is launched on the host'smobile device. In block 806, a message is sent to a guest using thecommunication client, where the message includes information (e.g., SSID(e.g., “Samsung”), link to application download site, etc.). In block807, process 800 stops.

FIG. 8 shows an example scenario 900 for application connection in anetwork of the television device 120, according to an embodiment. In oneembodiment, the television device 120 prompts the user on the display121 to enter setup information that is related to the network session,such as session name, host's name and host's home address (e.g., 2345Right Rd., Irvine, Calif.), for example using a remote control device,from a paired electronic device, etc. In one embodiment, the televisiondevice 120 connects to a cloud or server 130 and sends a request 910(e.g., HTTP request) and uploads the home address information to thecloud or server 130. In one embodiment, the server responds via a reply920 with the hosts GPS location based on reverse lookup of the address(e.g., 33.66N 117.7W).

In one embodiment, the application (e.g., application 1 126) running onthe television device 120 retrieves information from the local network,such as wireless SSID, security key and IP address of the televisiondevice 120. In one embodiment, if the television device 120 is wireconnected to the local network (e.g., via Ethernet) and does not havethe required network information, the application prompts the user toenter the network information.

FIG. 9 shows an example scenario 1000 for application connection in anetwork of the television device 120, according to an embodiment. In oneembodiment, an application of a guest's electronic device 1 140retrieve's the GPS location 1010 of the electronic device 1 140 andsends the GPS location 1010 to the cloud or server 130 using a request1020, and the cloud or server 130 responds with a reply 1030 thatincludes a list 1110 (FIG. 10) of active sessions in the area of the GPSlocation 1010.

FIG. 10 shows an example scenario 1100 for application connection in anetwork of the television device 120, according to an embodiment. In oneembodiment, the list 1110 of active sessions is displayed on display 141of the guest's electronic device 1 140. The user then selects one optionout of the list 1110 displayed on the display 141. In one embodiment,the electronic device 1 140 downloads the information related to theselected session from the cloud or server 130. The application of theelectronic device 1 140 uses the downloaded information to connect tothe local wireless network. Once connected, the electronic device 1 140may use the television device 120 IP address to communicate with theapplication running on the television device 120.

In one embodiment, the timestamp and time to live value retrieved fromthe cloud or server 130 are used by the application on the electronicdevice 1 140 to determine when to disconnect from the local networknetwork. After an electronic device 1 140 moves out of the wirelessrange of the local network, the electronic device 1 140 disconnects fromthe local network and the session information may have to be obtainedagain in order to re-establish the connection.

FIG. 11 shows an example scenario 1200 for application connection in anetwork of the television device 120, according to an embodiment. In oneembodiment, the host television device 120 connects to a cloud or server130 and sends a request 1210 (e.g., HTTP request) and uploads sessionsetup information from the local network to the cloud or server 130, forexample: “SessionName”: “Adam's Session,” “HostName:” “Adam;”“HostAddress:” “1234 ABCD;” “SessionStartDate:” “11-05-2012;”“SessionTime:” “20:00;” “SessionDuration:” “08:00;” “WirelessSSID:”“Samsung;” “NKEY:” “12345678;” “TVIP:” “192.168.1.1,” etc. In oneembodiment, the cloud or server 130 generates a unique session ID basedon the received information from the host television device 120. In oneembodiment, the cloud or server 130 determines where the mobile deviceapplication on different platforms may be found (e.g., URL for theapplication on an Android® market, etc.). In one embodiment, session IDand the location information for the mobile device application is alsosent back to the host television device 120 in a reply message 1220.

FIG. 12 shows an example scenario 1300 for application connection in anetwork of the television device 120, according to an embodiment. In oneembodiment, once the host television device 120 receives the session IDand location information for a mobile device application for connectingto the television device application (e.g., application 1 126, FIG. 2),the host television device 120 generates a QR code 1320 on the display121, and informs the host of the status 1310. In one embodiment, thetelevision application also presents instructions for using the QR code,such as “Please scan the QR code using compatible phone App to send outthe invite.”

FIG. 13 shows an example scenario 1400 for application connection in anetwork of the television device 120, according to an embodiment. In oneembodiment, a host mobile electronic device (e.g., electronic device 2140, FIG. 2) is used to scan the QR code from the host television device(e.g., television device 120, FIG. 2). In one embodiment, the scanned QRcode 1420 is shown on the display (e.g., 141, FIG. 2) of the mobiledevice. In one embodiment, the scanning of the QR code by a mobiledevice application automatically launches a Host Phone's email clientwith the Session ID and other information in it. In one embodiment, theemail would also include URL's from where the mobile device applicationmay be downloaded. The host mobile device may then be used to composethe invite, add guests, and send out the invite to the selected guests.

FIG. 14 shows an example scenario 1500 for application connection in anetwork of the television device 120, according to an embodiment. In oneembodiment, after using the scenarios 1300 and 1400, a host's electronicdevice (e.g., electronic device 2 140) is used to compose and send aninvite (e.g., composed using an electronic keyboard 1520) communicationthat includes a unique identifier 1510 to a guest's electronic device 1140. In one embodiment, using the unique identifier 1510 sent in theinvite shown on display 141, the guest's electronic device 1 140application retrieves the session information from the cloud or server130 using the unique identifier 1510. The electronic device 1 140application uses the session information to connect to the localnetwork. In one embodiment, once connected, the electronic device 1 140uses the IP address of television device 120 to communicate with theapplication of the television device 120. In one embodiment, along withthe session ID, a link (e.g., URL) of a location of where a mobiledevice application may be downloaded or otherwise obtained from. If theuser of the electronic device 1 140 does not already have the mobiledevice application, the link may be used for downloading and launchingthe mobile device application on the electronic device 1 140. Once themobile device application is downloaded, the guests start the mobiledevice application and enter the session ID they received in the invite.The guests would then be able to access the session on the server.

In one embodiment, once the guests are at the host's location (e.g.,house) and they start the mobile device application, the mobile deviceapplication checks if the current time matches the Session Active time.If it does, the mobile device application automatically downloads thehosts' SSID, Network Key and IP address information. This would allowthe host television application to connect to the Host's wireless localnetwork. Once the host television application is connected, the guest'smobile electronic devices may use the IP address of television device120 to communicate with the television application.

FIG. 15 is a high-level block diagram showing an information processingsystem comprising a computing system 500 implementing an embodiment. Thesystem 500 includes one or more processors 511 (e.g., ASIC, CPU, etc.),and can further include an electronic display device 512 (for displayinggraphics, text, and other data), a main memory 513 (e.g., random accessmemory (RAM)), storage device 514 (e.g., hard disk drive), removablestorage device 515 (e.g., removable storage drive, removable memorymodule, a magnetic tape drive, optical disk drive, computer-readablemedium having stored therein computer software and/or data), userinterface device 516 (e.g., keyboard, touch screen, keypad, pointingdevice), and a communication interface 517 (e.g., modem, wirelesstransceiver (such as WiFi, Cellular), a network interface (such as anEthernet card), a communications port, or a PCMCIA slot and card). Thecommunication interface 517 allows software and data to be transferredbetween the computer system and external devices. The system 500 furtherincludes a communications infrastructure 518 (e.g., a communicationsbus, cross-over bar, or network) to which the aforementioneddevices/modules 511 through 517 are connected.

The information transferred via communications interface 517 may be inthe form of signals such as electronic, electromagnetic, optical, orother signals capable of being received by communications interface 517,via a communication link that carries signals and may be implementedusing wire or cable, fiber optics, a phone line, a cellular phone link,an radio frequency (RF) link, and/or other communication channels.

In one implementation, in a mobile wireless device such as a mobilephone, the system 500 further includes an image capture device such as acamera 15. The system 500 may further include application modules as MMSmodule 521, SMS module 522, email module 523, social network interface(SNI) module 524, audio/video (AV) player 525, web browser 526, imagecapture module 527, etc.

The system 500 further includes a discovery module 11 as describedherein, according to an embodiment. In one implementation of networkaccess and application connection processes 530 along with an operatingsystem 529 may be implemented as executable code residing in a memory ofthe system 500. In another embodiment, such modules are in firmware,etc.

One or more of the described embodiments may provide a convenient wayfor many guest's of a host that may desire access to a television deviceapplication on a wireless network in order to connect their handhelddevices application with the television device application. In using nor more of the described embodiments, no need is required for networkbased discovery employing, for example, universal plug and play (UPnP)protocol as the IP address of a television device may be distributed aspart of a QR code.

As is known to those skilled in the art, the aforementioned examplearchitectures described above, according to said architectures, can beimplemented in many ways, such as program instructions for execution bya processor, as software modules, microcode, as computer program producton computer readable media, as analog/logic circuits, as applicationspecific integrated circuits, as firmware, as consumer electronicdevices, AV devices, wireless/wired transmitters, wireless/wiredreceivers, networks, multi-media devices, etc. Further, embodiments ofsaid Architecture can take the form of an entirely hardware embodiment,an entirely software embodiment or an embodiment containing bothhardware and software elements.

Embodiments have been described with reference to flowchartillustrations and/or block diagrams of methods, apparatus (systems) andcomputer program products according to one or more embodiments. Eachblock of such illustrations/diagrams, or combinations thereof, can beimplemented by computer program instructions. The computer programinstructions when provided to a processor produce a machine, such thatthe instructions, which execute via the processor, create means forimplementing the functions/operations specified in the flowchart and/orblock diagram. Each block in the flowchart/block diagrams may representa hardware and/or software module or logic, implementing one or moreembodiments. In alternative implementations, the functions noted in theblocks may occur out of the order noted in the figures, concurrently,etc.

The terms “computer program medium,” “computer usable medium,” “computerreadable medium”, and “computer program product,” are used to generallyrefer to media such as main memory, secondary memory, removable storagedrive, a hard disk installed in hard disk drive. These computer programproducts are means for providing software to the computer system. Thecomputer readable medium allows the computer system to read data,instructions, messages or message packets, and other computer readableinformation from the computer readable medium. The computer readablemedium, for example, may include non-volatile memory, such as a floppydisk, ROM, flash memory, disk drive memory, a CD-ROM, and otherpermanent storage. It is useful, for example, for transportinginformation, such as data and computer instructions, between computersystems. Computer program instructions may be stored in a computerreadable medium that can direct a computer, other programmable dataprocessing apparatus, or other devices to function in a particularmanner, such that the instructions stored in the computer readablemedium produce an article of manufacture including instructions whichimplement the function/act specified in the flowchart and/or blockdiagram block or blocks.

Computer program instructions representing the block diagram and/orflowcharts herein may be loaded onto a computer, programmable dataprocessing apparatus, or processing devices to cause a series ofoperations performed thereon to produce a computer implemented process.Computer programs (i.e., computer control logic) are stored in mainmemory and/or secondary memory. Computer programs may also be receivedvia a communications interface. Such computer programs, when executed,enable the computer system to perform the features of one or moreembodiments as discussed herein. In particular, the computer programs,when executed, enable the processor and/or multi-core processor toperform the features of the computer system. Such computer programsrepresent controllers of the computer system. A computer program productcomprises a tangible storage medium readable by a computer system andstoring instructions for execution by the computer system for performinga method of one or more embodiments.

Though the embodiments have been described with reference to certainversions thereof; however, other versions are possible. Therefore, thespirit and scope of the appended claims should not be limited to thedescription of the preferred versions contained herein.

What is claimed is:
 1. A method for application connection, comprising:receiving a list of application active sessions by a first electronicdevice based on location of the active sessions in relation to alocation of the first electronic device; and selecting an active sessionusing the first electronic device to gain access for connection to afirst application by the first electronic device.
 2. The method of claim1, further comprising: transmitting location information for a secondelectronic device to a server, wherein the second electronic deviceincludes the first application launched thereon; transmitting locationinformation for the first electronic device to the server; andgenerating session information by the server for each active session,wherein the first electronic device receives the list of active sessionsfrom the server based on the location of the first electronic device,and the list of active sessions comprising session information for eachactive session.
 3. The method of claim 2, further comprising: launchinga second application on the first electronic device; and receiving theactive session list based on the location information of the firstelectronic device.
 4. The method of claim 2, wherein the locationinformation for the second electronic device comprises an address. 5.The method of claim 4, further comprising deaccessing the firstelectronic device from the first application based on one or more of thefirst electronic device moving out of a particular range to the secondelectronic device, and a time period, wherein the second electronicdevice comprises a television device and the first electronic devicecomprises a mobile electronic device.
 6. The method of claim 5, whereinthe mobile electronic device comprises a mobile phone.
 7. The method ofclaim 1, wherein the selected active session is used by the firstelectronic device to gain access to a secured network for connecting tothe first application by the first electronic device.
 8. A method forapplication connection, comprising: receiving session information by afirst device, wherein the first device includes a first applicationlaunched thereon; providing an invitation message including the sessioninformation to a second electronic device; and using the sessioninformation by the second electronic device to connect to the firstapplication.
 9. The method of claim 8, wherein the invitation includesone or more of a uniform resource identifier (URI) information, and auniform resource locator (URL).
 10. The method of claim 9, furthercomprising: transmitting identification content and information relatedto the first electronic device to a server; receiving the sessioninformation by the first electronic device; and automatically generatingthe invitation message including the session information for the secondelectronic device to gain access to the network.
 11. The method of claim10, further comprising: launching a second application on the otherelectronic device; using the session information for retrievinginformation related to the first device from the server by the secondelectronic device; and using the retrieved information by the seconddevice for connecting to the first application.
 12. The method of claim8, wherein the information related to the first device comprises aunique identifier.
 13. The method of claim 12, wherein a host mobileelectronic device obtains the session information and uses the sessioninformation to generate content for providing the invitation.
 14. Themethod of claim 13, wherein the host mobile electronic device providesthe invitation through one of a text message and an email.
 15. Themethod of claim 14, further comprising: deaccessing the secondelectronic device from the network based upon retrieved timeinformation.
 16. The method of claim 8, wherein the first electronicdevice comprises a television device and the second electronic devicecomprises a mobile electronic device.
 17. The method of claim 16,wherein the mobile electronic device comprises a mobile phone.
 18. Asystem for application connection, comprising: a first electronic devicethat executes a first application for generating identification contentfor the first electronic device; and a second electronic device thatobtains session information based on the identification content, anduses the session information to connect to the first application. 19.The system of claim 18, wherein the second electronic device executes asecond application and uses the second application for obtaining thesession information.
 20. The system of claim 19, wherein the sessioninformation comprises one or more of a quick response (QR) code, aunique identifier, and active local session information.
 21. The systemof claim 20, wherein access to the first application ends based on oneof a particular time and distance of the second electronic device fromthe first electronic device.
 22. The system of claim 21, wherein thefirst electronic device comprises a television device and the secondelectronic device comprises a mobile electronic device.
 23. The systemof claim 22, wherein the mobile electronic device comprises a mobilephone.
 24. A non-transitory computer-readable medium having instructionswhich when executed on a computer perform a method comprising:generating identification content for a first electronic device, whereinthe first electronic device includes a first application launchedthereon; obtaining session information based on the identificationcontent by a second electronic device; and using the session informationby the second electronic device to connect to the first application. 25.The medium of claim 24, further comprising: launching a secondapplication on the second electronic device; and using the secondapplication for obtaining the session information by the secondelectronic device.
 26. The medium of claim 25, wherein the sessioninformation comprises one or more of a unique identifier, a sessionidentification, a link to the second application, and a list of localactive sessions based on location information of the second electronicdevice.
 27. The medium of claim 26, further comprising: deaccessing thesecond electronic device from the first application based on one or moreof an allowed access time and distance from the first electronic device.28. The medium of claim 27, wherein the first electronic devicecomprises a television device, and the second electronic devicecomprises a mobile electronic device.
 29. The medium of claim 28,wherein the mobile electronic device comprises a mobile phone.